package com.zhtkj.constant;

import java.util.Hashtable;
import java.util.Map;

import com.zhtkj.dto.CarAnalysis;

/** 
* @ClassName: Constant 
* @Description: 保存全局变量 
* @author mafeng 
* @date 2017年9月7日 上午9:20:05 
*  
*/
public class Constant {

	private Constant() {
		
	}
	
	static {
		constantMap = new Hashtable<String, CarAnalysis>();
	}
	
	//全局Map<String, CarAnalysis>, 每辆车都要保存一个这样的分析对象
	public static Map<String, CarAnalysis> constantMap;
	
	//有位移无速度速度临界值
	public static Float moveAndSpeedValue = 5F;
	//有位移无速度距离临界值
	public static Integer moveAndSpeedDistance = 100;
	//有位移无速度可疑点累计次数
	public static Integer moveAndSpeedDoubtTotal = 15;
	//有位移无速度事件值
	public static Integer moveAndNoSpeedType = 10001;

	//有速度无位移速度临界值
	public static Float speedAndMoveValue = 30F;
	//有速度无位移距离临界值
	public static Integer speedAndMoveDistance = 10;
	//有速度无位移可疑点累计次数
	public static Integer speedAndMoveDoubtTotal = 6;
	//有速度无位移事件值
	public static Integer speedAndNoMoveType = 10002;
	
	//ecu作弊事件值(从事件表搬运过来)
	public static Integer ecuCheatType = 10003;
	
	//重空车作弊事件值(从事件表搬运过来)
	public static Integer heavyEmptyType = 10004;
	
	
	//超速临界值（三环外）
	public static Float overSpeedValue_default = 80F;
	//超速临界值（二环内）
	public static Float overSpeedValue_erhuan = 60F;
	//超速临界值（二环内至三环之间）
	public static Float overSpeedValue_sanhuan = 70F;
	//超速可疑点累计次数
	public static Integer overSpeedDoubtTotal = 10;
	//超速违规事件值
	public static Integer overSpeedType = 20001;
	
	//闯禁可疑点累计次数
	public static Integer inRestrictAreaDoubtTotal = 2;
	//闯禁违规事件值
	public static Integer inRestrictAreaType = 20002;
	
	//偷运（违规装土）事件值
	public static Integer smuggleType = 20003;
	
	//非法举斗事件值
	public static Integer illegalBucketType = 20004;
	
	//违规开停工事件值
	public static Integer illegalWorkType = 20005;
	
	//北斗异常事件值(从事件表搬运过来)
	public static Integer beidouExceptionType = 20006;
	
	//开关箱探头异常事件值(从事件表搬运过来)
	public static Integer boxExceptionType = 20007;
	
	//越界（离开路线）事件值
	public static Integer outBoundType = 20008;
	
	//开关箱数据异常
	public static Integer boxCloseDataType = 20009;
	//开关箱数据异常里程临界值（单位：米）
	public static Integer boxCloseMileage = 80000;
	
	//重空车数据异常
	public static Integer boxEmptyDataType = 20010;
	//重空车数据异常里程临界值（单位：米）
	public static Integer boxEmptyMileage = 80000;
	
	//举升数据异常
	public static Integer boxUpDataType = 20011;
	//举升数据异常里程临界值（单位：米）
	public static Integer boxUpMileage = 80000;
	
	//ecu异常可疑累计次数
	public static Integer ecuExceptionDoubtTotal = 30;

	// 计算趟次时在工地停留临界时间（单位：秒）
	public static Integer stayConsappTime = 180;
	// 计算趟次时在工地平均速度临界值（单位：km/h）
	public static Float stayConsappSpeed = 10F;
	
	// 计算趟次时在卸区停留临界时间（单位：秒）
	public static Integer stayUnloadingTime = 300;
	// 计算趟次时在卸区平均速度临界值（单位：km/h）
	public static Float stayUnloadingSpeed = 10F;
}
